Description
Opens a DataSource and reads its properties.
VBScript Code
|
Copy Code |
Function OpenAXF(p_strAXFPath)
Dim pDS
Set pDS = Application.CreateAppObject("DataSource")
pDS.Open(p_strAXFPath)
If (pDS.IsOpen) Then
Set OpenAXF = pDS
Else
Set OpenAXF = Nothing
End If
End Function
Function GetFileNameUI(p_extension, p_filter, p_title, p_flags)
GetFileNameUI = CommonDialog.ShowOpen(p_extension, p_filter, p_title, p_flags)
If (IsEmpty(GetFileNameUI)) Then
GetFileNameUI = ""
End If
End Function
Sub GetDataSourceProperties
Dim strFileName
strFileName = GetFileNameUI("axf", "ArcPad AXF Files|*.axf","Select AXF File", &H1000)
If ("" = strFileName) Then Exit Sub
Dim pDS
Set pDS = OpenAXF(strFileName)
If (pDS Is Nothing) Then
Console.Print "Open DataSource failed"
Exit Sub
End If
Dim strFilePath
strFilePath = pDS.FilePath
Console.Print "FilePath: " & strFilePath
Dim lNumLayers
lNumLayers = pDS.Properties("LAYERCOUNT")
Console.Print "Num Layers: " & lNumLayers
Dim strVersion
strVersion = pDS.Properties("AXF_SCHEMA_VERSION")
Console.Print "AXF_SCHEMA_VERSION: " & strVersion
Dim lCount, strLayerName, lLayerID, strFolder
For lCount = 1 To lNumLayers
strLayerName = pDS.LayerProperties(lCount,"NAME")
lLayerID = pDS.LayerProperties(lCount,"LAYERID")
strFolder = pDS.LayerProperties(lCount,"FOLDER")
Console.Print "Layer " & lCount & " NAME: " & strLayerName
Console.Print "Layer " & lCount & " ID: " & lLayerID
Console.Print "Layer " & lCount & " FOLDER: " & strFolder
Next
pDS.Close
Set pDS = Nothing
End Sub |
JScript Code
|
Copy Code |
function OpenAXF(p_strAXFPath)
{
var pDS = Application.CreateAppObject("DataSource");
pDS.Open(p_strAXFPath)
if (pDS.IsOpen)
return pDS
else
return null;
}
function GetFileNameUI(p_extension, p_filter, p_title, p_flags)
{
var resOpen = CommonDialog.ShowOpen(p_extension, p_filter, p_title, p_flags);
if (resOpen == null)
return "";
else
return resOpen;
}
function GetDataSourceProperties()
{
var strFileName = GetFileNameUI("axf", "ArcPad AXF Files|*.axf","Select AXF File", 0x1000);
if ("" == strFileName)
return;
var pDS = OpenAXF(strFileName);
if (null == pDS)
{
Console.Print("Open DataSource failed");
return;
}
var strFilePath = pDS.FilePath;
Console.Print("FilePath: " + strFilePath);
var lNumLayers = pDS.Properties("LAYERCOUNT");
Console.Print("Num Layers: " + lNumLayers);
var strVersion = pDS.Properties("AXF_SCHEMA_VERSION");
Console.Print("AXF_SCHEMA_VERSION: " + strVersion);
var lCount, strLayerName, lLayerID, strFolder
for (lCount=1;lCount<=lNumLayers;lCount++)
{
strLayerName = pDS.LayerProperties(lCount,"NAME");
lLayerID = pDS.LayerProperties(lCount,"LAYERID");
strFolder = pDS.LayerProperties(lCount,"FOLDER");
Console.Print("Layer " + lCount + " NAME: " + strLayerName);
Console.Print("Layer " + lCount + " ID: " + lLayerID);
Console.Print("Layer " + lCount + " FOLDER: " + strFolder);
}
pDS.Close();
pDS = null;
} |